//配置axios的全局基本路径
// axios.defaults.baseURL='http://localhost:8080/'
// axios.defaults.baseURL='http://api.pethome.com/'
axios.defaults.baseURL='http://api.yaohuaipeng.top/'
Vue.prototype.$http = axios

//为了后端校验是否已经登录，只要用axios的请求都要携带token
//=========*********=========//
axios.interceptors.request.use(config=>{
    let token = localStorage.getItem("uToken")
    if(token){
        config.headers["token"] = token;
    }
    return config;
},error => {
    Promise.reject(error)
})

//后台如果没有登录或者权限会返回一个json错误，通过响应拦截器拦截这个错误，然后跳转到登录页面。
//=========*********=========//
axios.interceptors.response.use(config=>{
    if(!config.data.success && "noLogin"===config.data.message){
        localStorage.removeItem("uToken")
        localStorage.removeItem("uUser")
        location.href = "/login.html"
    }
    return config;
},error => {
    Promise.reject(error)
})
//=========*********=========//

//原来所有访问后台管理都要经过路由，所以在路由的地方做登录拦截。
//现在主站没有路由，但是common.js会被所有主站页面所引用，所以可以在里面做登录拦截

//对于需要登录才能访问页面，判断localStorage中是否有uUser就OK
var url = location.href;
if(url.indexOf("login.html")!=-1||url.indexOf("register.html")!=-1
    ||url.indexOf("binder.html")!=-1||url.indexOf("callback.html")!=-1){
    console.log(url+"放行了！")
}else{
    var user = localStorage.getItem("uUser");
    if(!user) //没有用户，没有登录，跳转到登录页面
        location.href = "/login.html"
}

function parseUrlParams2Obj(url) {
    //http://bugtracker.itsource.cn/login.html?cdoe=xxx&state=xxx
    //let url = location.href;
    //cdoe=xxx&state=xxx
    url = url.substring(url.lastIndexOf("?")+1)
    //["cdoe=xxx","state=xxx"]
    let kvs=url.split("&");
    let params = {};
    for (let i=0;i<kvs.length;i++) {
        // "cdoe=xxx"
        //[code,xxx]
        console.log(kvs[i]);
        let attrName=kvs[i].split("=")[0];
        let attrVal=kvs[i].split("=")[1];
        //属性名是动态的
        params[attrName] = attrVal;
    }

    return params;
}